# -*- coding: utf-8 -*-
"""
@Time    : 2024/6/27 20:17 
@Author  : ZhangShenao 
@File    : class_method.py 
@Desc    : 类方法
使用@classmethod装饰器将一个方法定义为类方法
类方法的第一个参数通常命名为cls,表示当前这个类本身,可以通过该参数来引用类属性,或类中其它类方法
"""


class MyClass:
    @classmethod
    def class_method(cls):
        """
        使用@classmethod装饰器将一个方法定义为类方法
        类方法的第一个参数通常命名为cls,表示当前这个类本身,可以通过该参数来引用类属性,或类中其它类方法
        """
        print('invoke class method')


if __name__ == '__main__':
    # 通过类直接调用类方法
    MyClass.class_method()

    # 通过实例也可以调用类方法
    my_instance = MyClass()
    my_instance.class_method()
